#if 0
#include "_collections.h"
#include "PikaStdDevice_common.h"
void _collections_deque___del__(PikaObj *self){
    pika_hal_CircularQueue* que = obj_getPtr(self, "_queue");
    pika_hal_circularQueue_deinit(que);
}
void _collections_deque___init__(PikaObj *self, int maxlen){
    pika_hal_CircularQueue* que = pika_hal_circularQueue_create(maxlen);
    obj_setPtr(self, "_queue", que);
}
pika_bool _collections_deque_append(PikaObj *self, int item){
    pika_hal_CircularQueue* que = obj_getPtr(self, "_queue");
    int result = pika_hal_circularQueue_enqueue(que, (uint8_t)item);
    return result == 0 ? pika_true : pika_false;
}
int _collections_deque_count(PikaObj *self){
    pika_hal_CircularQueue* que = obj_getPtr(self, "_queue");
    return pika_hal_circularQueue_getCount(que);
}
pika_bool _collections_deque_is_empty(PikaObj *self){
    pika_hal_CircularQueue* que = obj_getPtr(self, "_queue");
    return pika_hal_circularQueue_isEmpty(que) ? pika_true : pika_false;
}
pika_bool _collections_deque_is_full(PikaObj *self){
    pika_hal_CircularQueue* que = obj_getPtr(self, "_queue");
    return pika_hal_circularQueue_isFull(que) ? pika_true : pika_false;
}
int _collections_deque_peek(PikaObj *self){
    pika_hal_CircularQueue* que = obj_getPtr(self, "_queue");
    uint8_t item;
    return pika_hal_circularQueue_peek(que, &item) == 0 ? pika_true : pika_false;
}
int _collections_deque_pop(PikaObj *self){
    pika_hal_CircularQueue* que = obj_getPtr(self, "_queue");
    uint8_t item;
    return pika_hal_circularQueue_dequeue(que, &item) == 0 ? pika_true : pika_false;
}
#endif